#pragma once
class Base {
protected:
	int m_data = 0;
public:
	virtual void  foo()
	{
		cout << "Base" << endl;
	};
};
class Derived :public Base {
protected:
	int m_data = 0;
public:
	void  foo()
	{
		cout << "Derived" << endl;
	}
};
